#pragma once
#include "hardware_buffer.h"
#include "refc_ptr.h"

namespace krryn{
namespace system{ template<typename _RenderTag> class renderer; }
namespace scene{
	template
	<
		typename _RenderTag
	>
	class index_buffer : public hardware_buffer{
	public:
		typedef krryn::core::refc_ptr<index_buffer> ptr;

		index_buffer(system::renderer<_RenderTag> &a_Renderer, size_t a_Size) {}
		~index_buffer() {}

		virtual void lock(lock_type a_Type);
		virtual void unlock();

		void operator +=(size_t a_Index);
	};
}
}